package com.sky.robot.frame.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 *
 * </p>
 *
 * @author sky
 * @since 2024-09-24
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("sky_table")
public class SkyTable implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    /**
     * 表名
     */
    @TableField("table_name")
    private String tableName;

    /**
     * 1:表;2:字段;3:key;4:普通表
     */
    @TableField("type")
    private String type;

    /**
     * 描述
     */
    @TableField("describes")
    private String describes;

    /**
     * 字符
     */
    @TableField("char_type")
    private String charType;

    /**
     * 数据库名
     */
    @TableField("database_name")
    private String databaseName;

    /**
     * 数据库引擎
     */
    @TableField("database_engine")
    private String databaseEngine;

    /**
     * 是否生成表结构
     */
    @TableField("is_create_table")
    private String isCreateTable;

    /**
     * 是否生成表单
     */
    @TableField("is_create_form")
    private String isCreateForm;

    /**
     * 最后更新时间
     */
    @TableField("last_update_time")
    private Date lastUpdateTime;

    /**
     * 表单数量
     */
    @TableField("form_qty")
    private Integer formQty;

    /**
     * 更新次数
     */
    @TableField("update_qty")
    private Integer updateQty;

    /**
     * 0:是1:否
     */
    @TableField("del_flag")
    private String delFlag;

    /**
     * 创建人
     */
    @TableField("create_by")
    private String createBy;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;

    /**
     * 更新人
     */
    @TableField("update_by")
    private String updateBy;

    /**
     * 更新时间
     */
    @TableField("update_time")
    private Date updateTime;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
}
